/**
* @author:kellen
* @contact:xiekellen@hotmail.com
* @company:achivo-gz
* @created on:
* @modified on:
*/

package com.sasis.dao;

import java.util.List;

import com.sasis.dao.Dao;
import com.sasis.model.Flight;

public interface FlightDao extends Dao {

    /**
     * Retrieves all of the flights
     */
    public List getFlights(Flight flight);

    /**
     * Gets flight's information based on primary key. An
     * ObjectRetrievalFailureException Runtime Exception is thrown if 
     * nothing is found.
     * 
     * @param id the flight's id
     * @return flight populated flight object
     */
    public Flight getFlight(final Integer id);
    
    public Flight getFlight(final Flight flight);

    /**
     * Saves a flight's information
     * @param flight the object to be saved
     */    
    public void saveFlight(Flight flight);

    /**
     * Removes a flight from the database by id
     * @param id the flight's id
     */
    public void removeFlight(Flight flight);
}

